package com.ccb.jyzx.expand.tiantouonline.dao;

import com.ccb.jyzx.expand.tiantouonline.bean.FileInfo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author XIEFEI
 * @date 2019-11-19 9:59
 * @Description
 **/
@Repository
public interface FileInfoDao {
    /**
     * 保存
     * @param fileInfo
     */
    void save(FileInfo fileInfo);

    /**
     * 根据Id 查找
     * @param fileId
     * @return
     */
    FileInfo getById(@Param("fileId") String fileId);

    /**
     * 根据ID 更新时间
     * @param fileId
     * @param formateTime
     */
    void updateUploadTime(@Param("fileId")String fileId, @Param("uploadTime")Long formateTime);

    /**
     *  根据ID 更新 upTag值
     * @param fileId
     * @param i
     */
    void updateUpTag(@Param("fileId")String fileId, @Param("upTag")int i);

    /**
     *  根据时间上边界查询
     * @param topTime 上边界
     * @param limitNum 最多返回记录数
     * @return
     */
    List<FileInfo> findByTimeTop(@Param("topTime")Long topTime, @Param("limitNum")Long limitNum);

    /**
     * 根据ID 物理删除
     * @param id
     */
    void clearById(@Param("id")String id);

    List<FileInfo> findFileinfoUnUnion();

    void updateUpMerged(@Param("fileId")String fileId, @Param("upMerged")int i);
}
